package shujia.day05;

/*
    继承和成员变量的关系:【就近原则】
    先在方法内部->当前类的成员变量位置->父亲的成员变量

    java提供了一关键字super可以在子类中使用直接父类中的非私有的成员【成员变量，构造方法，成员方法】

    面试题：super和this的区别？


 */

class GrandFu3{
    int b = 100;
}
class Fu3 extends GrandFu3{
    //int b = 100;
    int a = 10;
}

class Zi3 extends Fu3 {
    //int b = 100;
    int a = 20;
    public void fun1() {
        int a = 30;
        int b = 200;
        System.out.println(a);
        System.out.println(this.a);
        System.out.println(super.a);
//        System.out.println(super.super.b); //无法使用super获取到间接父类中的成员

        System.out.println(b);
        GrandFu3 grandFu3 = new GrandFu3();
        System.out.println(grandFu3.b);
    }
}

public class ExtendsDemo3 {
    public static void main(String[] args) {
        Zi3 zi3 = new Zi3();
        zi3.fun1();
    }
}
